
<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta charset="utf-8" />
    <title>curses.panel — A panel stack extension for curses &#8212; Python 3.8.13 documentation</title><meta name="viewport" content="width=device-width, initial-scale=1.0">
    
    <link rel="stylesheet" href="../_static/pydoctheme.css?2022.1" type="text/css" />
    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    
    <script id="documentation_options" data-url_root="../" src="../_static/documentation_options.js"></script>
    <script src="../_static/jquery.js"></script>
    <script src="../_static/underscore.js"></script>
    <script src="../_static/doctools.js"></script>
    <script src="../_static/language_data.js"></script>
    
    <script src="../_static/sidebar.js"></script>
    
    <link rel="search" type="application/opensearchdescription+xml"
          title="Search within Python 3.8.13 documentation"
          href="../_static/opensearch.xml"/>
    <link rel="author" title="About these documents" href="../about.html" />
    <link rel="index" title="Index" href="../genindex.html" />
    <link rel="search" title="Search" href="../search.html" />
    <link rel="copyright" title="Copyright" href="../copyright.html" />
    <link rel="next" title="platform — Access to underlying platform’s identifying data" href="platform.html" />
    <link rel="prev" title="curses.ascii — Utilities for ASCII characters" href="curses.ascii.html" />
    <link rel="canonical" href="https://docs.python.org/3/library/curses.panel.html" />
    
      
    

    
    <style>
      @media only screen {
        table.full-width-table {
            width: 100%;
        }
      }
    </style>
<link rel="shortcut icon" type="image/png" href="../_static/py.svg" />
            <script type="text/javascript" src="../_static/copybutton.js"></script>
            <script type="text/javascript" src="../_static/menu.js"></script> 

  </head>
<body>
<div class="mobile-nav">
    <input type="checkbox" id="menuToggler" class="toggler__input" aria-controls="navigation"
           aria-pressed="false" aria-expanded="false" role="button" aria-label="Menu" />
    <label for="menuToggler" class="toggler__label">
        <span></span>
    </label>
    <nav class="nav-content" role="navigation">
         <a href="https://www.python.org/" class="nav-logo">
             <img src="../_static/py.svg" alt="Logo"/>
         </a>
        <div class="version_switcher_placeholder"></div>
        <form role="search" class="search" action="../search.html" method="get">
            <svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" class="search-icon">
                <path fill-rule="nonzero"
                        d="M15.5 14h-.79l-.28-.27a6.5 6.5 0 001.48-5.34c-.47-2.78-2.79-5-5.59-5.34a6.505 6.505 0 00-7.27 7.27c.34 2.8 2.56 5.12 5.34 5.59a6.5 6.5 0 005.34-1.48l.27.28v.79l4.25 4.25c.41.41 1.08.41 1.49 0 .41-.41.41-1.08 0-1.49L15.5 14zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14z" fill="#444"></path>
            </svg>
            <input type="text" name="q" aria-label="Quick search"/>
            <input type="submit" value="Go"/>
        </form>
    </nav>
    <div class="menu-wrapper">
        <nav class="menu" role="navigation" aria-label="main navigation">
            <div class="language_switcher_placeholder"></div>
  <h3><a href="../contents.html">Table of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">curses.panel</span></code> — A panel stack extension for curses</a><ul>
<li><a class="reference internal" href="#functions">Functions</a></li>
<li><a class="reference internal" href="#panel-objects">Panel Objects</a></li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="curses.ascii.html"
                        title="previous chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">curses.ascii</span></code> — Utilities for ASCII characters</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="platform.html"
                        title="next chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">platform</span></code> —  Access to underlying platform’s identifying data</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../bugs.html">Report a Bug</a></li>
      <li>
        <a href="https://github.com/python/cpython/blob/3.8/Doc/library/curses.panel.rst"
            rel="nofollow">Show Source
        </a>
      </li>
    </ul>
  </div>
        </nav>
    </div>
</div>

  
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="platform.html" title="platform — Access to underlying platform’s identifying data"
             accesskey="N">next</a> |</li>
        <li class="right" >
          <a href="curses.ascii.html" title="curses.ascii — Utilities for ASCII characters"
             accesskey="P">previous</a> |</li>

          <li><img src="../_static/py.svg" alt="python logo" style="vertical-align: middle; margin-top: -1px"/></li>
          <li><a href="https://www.python.org/">Python</a> &#187;</li>
          <li class="switchers">
            <div class="language_switcher_placeholder"></div>
            <div class="version_switcher_placeholder"></div>
          </li>
          <li>
              
          </li>
    <li id="cpython-language-and-version">
      <a href="../index.html">3.8.13 Documentation</a> &#187;
    </li>

          <li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> &#187;</li>
          <li class="nav-item nav-item-2"><a href="allos.html" accesskey="U">Generic Operating System Services</a> &#187;</li>
                <li class="right">
                    

    <div class="inline-search" role="search">
        <form class="inline-search" action="../search.html" method="get">
          <input placeholder="Quick search" aria-label="Quick search" type="text" name="q" />
          <input type="submit" value="Go" />
          <input type="hidden" name="check_keywords" value="yes" />
          <input type="hidden" name="area" value="default" />
        </form>
    </div>
                     |
                </li>
            
      </ul>
    </div>    

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body" role="main">
            
  <div class="section" id="module-curses.panel">
<span id="curses-panel-a-panel-stack-extension-for-curses"></span><h1><a class="reference internal" href="#module-curses.panel" title="curses.panel: A panel stack extension that adds depth to  curses windows."><code class="xref py py-mod docutils literal notranslate"><span class="pre">curses.panel</span></code></a> — A panel stack extension for curses<a class="headerlink" href="#module-curses.panel" title="Permalink to this headline">¶</a></h1>
<hr class="docutils" />
<p>Panels are windows with the added feature of depth, so they can be stacked on
top of each other, and only the visible portions of each window will be
displayed.  Panels can be added, moved up or down in the stack, and removed.</p>
<div class="section" id="functions">
<span id="cursespanel-functions"></span><h2>Functions<a class="headerlink" href="#functions" title="Permalink to this headline">¶</a></h2>
<p>The module <a class="reference internal" href="#module-curses.panel" title="curses.panel: A panel stack extension that adds depth to  curses windows."><code class="xref py py-mod docutils literal notranslate"><span class="pre">curses.panel</span></code></a> defines the following functions:</p>
<dl class="function">
<dt id="curses.panel.bottom_panel">
<code class="sig-prename descclassname">curses.panel.</code><code class="sig-name descname">bottom_panel</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.bottom_panel" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the bottom panel in the panel stack.</p>
</dd></dl>

<dl class="function">
<dt id="curses.panel.new_panel">
<code class="sig-prename descclassname">curses.panel.</code><code class="sig-name descname">new_panel</code><span class="sig-paren">(</span><em class="sig-param">win</em><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.new_panel" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns a panel object, associating it with the given window <em>win</em>. Be aware
that you need to keep the returned panel object referenced explicitly.  If you
don’t, the panel object is garbage collected and removed from the panel stack.</p>
</dd></dl>

<dl class="function">
<dt id="curses.panel.top_panel">
<code class="sig-prename descclassname">curses.panel.</code><code class="sig-name descname">top_panel</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.top_panel" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the top panel in the panel stack.</p>
</dd></dl>

<dl class="function">
<dt id="curses.panel.update_panels">
<code class="sig-prename descclassname">curses.panel.</code><code class="sig-name descname">update_panels</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.update_panels" title="Permalink to this definition">¶</a></dt>
<dd><p>Updates the virtual screen after changes in the panel stack. This does not call
<a class="reference internal" href="curses.html#curses.doupdate" title="curses.doupdate"><code class="xref py py-func docutils literal notranslate"><span class="pre">curses.doupdate()</span></code></a>, so you’ll have to do this yourself.</p>
</dd></dl>

</div>
<div class="section" id="panel-objects">
<span id="curses-panel-objects"></span><h2>Panel Objects<a class="headerlink" href="#panel-objects" title="Permalink to this headline">¶</a></h2>
<p>Panel objects, as returned by <a class="reference internal" href="#curses.panel.new_panel" title="curses.panel.new_panel"><code class="xref py py-func docutils literal notranslate"><span class="pre">new_panel()</span></code></a> above, are windows with a
stacking order. There’s always a window associated with a panel which determines
the content, while the panel methods are responsible for the window’s depth in
the panel stack.</p>
<p>Panel objects have the following methods:</p>
<dl class="method">
<dt id="curses.panel.Panel.above">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">above</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.above" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the panel above the current panel.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.below">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">below</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.below" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the panel below the current panel.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.bottom">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">bottom</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.bottom" title="Permalink to this definition">¶</a></dt>
<dd><p>Push the panel to the bottom of the stack.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.hidden">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">hidden</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.hidden" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns <code class="docutils literal notranslate"><span class="pre">True</span></code> if the panel is hidden (not visible), <code class="docutils literal notranslate"><span class="pre">False</span></code> otherwise.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.hide">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">hide</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.hide" title="Permalink to this definition">¶</a></dt>
<dd><p>Hide the panel. This does not delete the object, it just makes the window on
screen invisible.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.move">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">move</code><span class="sig-paren">(</span><em class="sig-param">y</em>, <em class="sig-param">x</em><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.move" title="Permalink to this definition">¶</a></dt>
<dd><p>Move the panel to the screen coordinates <code class="docutils literal notranslate"><span class="pre">(y,</span> <span class="pre">x)</span></code>.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.replace">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">replace</code><span class="sig-paren">(</span><em class="sig-param">win</em><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.replace" title="Permalink to this definition">¶</a></dt>
<dd><p>Change the window associated with the panel to the window <em>win</em>.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.set_userptr">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">set_userptr</code><span class="sig-paren">(</span><em class="sig-param">obj</em><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.set_userptr" title="Permalink to this definition">¶</a></dt>
<dd><p>Set the panel’s user pointer to <em>obj</em>. This is used to associate an arbitrary
piece of data with the panel, and can be any Python object.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.show">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">show</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.show" title="Permalink to this definition">¶</a></dt>
<dd><p>Display the panel (which might have been hidden).</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.top">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">top</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.top" title="Permalink to this definition">¶</a></dt>
<dd><p>Push panel to the top of the stack.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.userptr">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">userptr</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.userptr" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the user pointer for the panel.  This might be any Python object.</p>
</dd></dl>

<dl class="method">
<dt id="curses.panel.Panel.window">
<code class="sig-prename descclassname">Panel.</code><code class="sig-name descname">window</code><span class="sig-paren">(</span><span class="sig-paren">)</span><a class="headerlink" href="#curses.panel.Panel.window" title="Permalink to this definition">¶</a></dt>
<dd><p>Returns the window object associated with the panel.</p>
</dd></dl>

</div>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar" role="navigation" aria-label="main navigation">
        <div class="sphinxsidebarwrapper">
  <h3><a href="../contents.html">Table of Contents</a></h3>
  <ul>
<li><a class="reference internal" href="#"><code class="xref py py-mod docutils literal notranslate"><span class="pre">curses.panel</span></code> — A panel stack extension for curses</a><ul>
<li><a class="reference internal" href="#functions">Functions</a></li>
<li><a class="reference internal" href="#panel-objects">Panel Objects</a></li>
</ul>
</li>
</ul>

  <h4>Previous topic</h4>
  <p class="topless"><a href="curses.ascii.html"
                        title="previous chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">curses.ascii</span></code> — Utilities for ASCII characters</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="platform.html"
                        title="next chapter"><code class="xref py py-mod docutils literal notranslate"><span class="pre">platform</span></code> —  Access to underlying platform’s identifying data</a></p>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../bugs.html">Report a Bug</a></li>
      <li>
        <a href="https://github.com/python/cpython/blob/3.8/Doc/library/curses.panel.rst"
            rel="nofollow">Show Source
        </a>
      </li>
    </ul>
  </div>
        </div>
      </div>
      <div class="clearer"></div>
    </div>  
    <div class="related" role="navigation" aria-label="related navigation">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> |</li>
        <li class="right" >
          <a href="platform.html" title="platform — Access to underlying platform’s identifying data"
             >next</a> |</li>
        <li class="right" >
          <a href="curses.ascii.html" title="curses.ascii — Utilities for ASCII characters"
             >previous</a> |</li>

          <li><img src="../_static/py.svg" alt="python logo" style="vertical-align: middle; margin-top: -1px"/></li>
          <li><a href="https://www.python.org/">Python</a> &#187;</li>
          <li class="switchers">
            <div class="language_switcher_placeholder"></div>
            <div class="version_switcher_placeholder"></div>
          </li>
          <li>
              
          </li>
    <li id="cpython-language-and-version">
      <a href="../index.html">3.8.13 Documentation</a> &#187;
    </li>

          <li class="nav-item nav-item-1"><a href="index.html" >The Python Standard Library</a> &#187;</li>
          <li class="nav-item nav-item-2"><a href="allos.html" >Generic Operating System Services</a> &#187;</li>
                <li class="right">
                    

    <div class="inline-search" role="search">
        <form class="inline-search" action="../search.html" method="get">
          <input placeholder="Quick search" aria-label="Quick search" type="text" name="q" />
          <input type="submit" value="Go" />
          <input type="hidden" name="check_keywords" value="yes" />
          <input type="hidden" name="area" value="default" />
        </form>
    </div>
                     |
                </li>
            
      </ul>
    </div>  
    <div class="footer">
    &copy; <a href="../copyright.html">Copyright</a> 2001-2022, Python Software Foundation.
    <br />
    This page is licensed under the Python Software Foundation License Version 2.
    <br />
    Examples, recipes, and other code in the documentation are additionally licensed under the Zero Clause BSD License.
    <br />
    
    <br />

    The Python Software Foundation is a non-profit corporation.
<a href="https://www.python.org/psf/donations/">Please donate.</a>
<br />
    <br />

    Last updated on Mar 17, 2022.
    <a href="https://docs.python.org/3/bugs.html">Found a bug</a>?
    <br />

    Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 2.4.4.
    </div>

  </body>
</html>